package top.infopub.mgr.bpa.dao;

import java.math.BigDecimal;
import java.util.Date;

import org.apache.ibatis.annotations.Param;

import top.infopub.generic.GenericDao;
import top.infopub.mgr.bpa.domain.IncaeSureDomain;
import top.infopub.mgr.bpa.vo.IncaeSureVo;
import top.infopub.model.bpa.IncaeSure;

import com.github.pagehelper.Page;

/** 对内建安产值确权(BPA_INCAE_SURE) **/
public interface IncaeSureDao extends GenericDao<IncaeSure, String> {

    /**
     * 根据条件查询对内建安产值确权记录
     * @param IncaeSureVo
     * @return 
     * @see
     */
    Page<IncaeSureDomain> selectByDomainWhere(IncaeSureVo incaeSureVo);
    
    /**
     * 根据条件查询对内建安产值确权记录--我审批的列表
     * @param IncaeSureVo
     * @return 
     * @see
     */
    Page<IncaeSureDomain> selectMyCheckByDomainWhere(IncaeSureVo incaeSureVo);
    
    /**
     * 新增-对外内建安产值确权
     */
    void insertById(IncaeSure incaeSure);
    void insertSelective(IncaeSure incaeSure);

    /**
     * 详情页
     */
    IncaeSureVo queryById(String id);
    
    /**
     * 下浮后(下浮模式)
     * @param sureMonth proCode
     * @return 
     * @see
     */
    BigDecimal selectMonthAfterAmountAfter(@Param("sureMonth") Date sureMonth,
                                           @Param("proCode") String proCode);
	
}